<h2>memory_object_change_attributes</h2>
<hr>
<p>
<strong>Function</strong> - Modify caller-specified subset of attributes representing target memory object.
<h3>SYNOPSIS</h3>
<pre>
<strong>kern_return_t   memory_object_change_attributes</strong>
                <strong>(memory_object_control_t</strong>         <var>memory_control</var>,
                 <strong>memory_object_flavor_t</strong>                  <var>flavor</var>,
                 <strong>memory_object_info_t</strong>                <var>attributes</var>,
                 <strong>attributes</strong>                    <var>attributes_count</var>,
                 <strong>mach_port_t</strong>                           <var>reply_to</var><strong>);</strong>
</pre>
<h3>PARAMETERS</h3>
<dl>
<p>
<dt> <var>memory_control</var> 
<dd>
[in memory-cache-control send right]
The memory cache control port 
to be used by the memory manager for cache management requests. 
This port is provided by the kernel in a <strong>memory_object_init</strong>
     or <strong>memory_object_create</strong> call.
<p>
<dt> <var>flavor</var> 
<dd>
[in scalar]
The type of information to be changed.  Valid values are:
<dl>
<p>
<dt> <strong>MEMORY_OBJECT_PERFORMANCE_INFO</strong>
<dd>
Performance related attributes such as the cache indicator and 
the cluster size.  <var>attributes</var> should specify a structure of type 
<strong>memory_object_perf_info</strong>.
<p>
<dt> <strong>MEMORY_OBJECT_BEHAVIOR_INFO</strong>
<dd>
Behavior related attributes such as the copy strategy and sync 
invalidate flag.  <var>attributes</var> should specify a structure of type 
<strong>memory_object_behavior_info</strong>.
<p>
<dt> <strong>MEMORY_OBJECT_ATTRIBUTES_INFO</strong>
<dd>
Behavior and performance related attributes such as the copy strategy,
cache indicator, and cluster size.  <var>attributes</var> should specify a structure of type 
<strong>memory_object_attr_info</strong>.
</dl>
<p>
<dt> <var>attributes</var> 
<dd>
[pointer to in structure]
New attributes.
<p>
<dt> <var>attributes_count</var> 
<dd>
[in scalar]
The size of the buffer (in natural-sized units).
<p>
<dt> <var>reply_port</var> 
<dd>
[in reply receive (to be converted to send) right]
A port to which a
reply (<strong>memory_object_change_completed</strong>) is to be sent indicating the 
completion of the attribute change.  Such a reply would be useful if the 
cache attribute is turned off, since such a change, if the memory object 
is no longer mapped, may result in the object being terminated.
</dl>
<h3>DESCRIPTION</h3>
<p>
The <strong>memory_object_change_attributes</strong> function sets various
attributes of the 
specified memory object.
<h3>RETURN VALUES</h3>
<p>
Only generic errors apply.
<h3>RELATED INFORMATION</h3>
<p>
Functions:
<a href="MO_change_completed.html"><strong>memory_object_change_completed</strong></a>,
<a href="MO_get_attributes.html"><strong>memory_object_get_attributes</strong></a>,
<a href="memory_object_create.html"><strong>memory_object_create</strong></a>.
<p>
Data Structures:
<a href="memory_object_perf_info.html"><strong>memory_object_perf_info</strong></a>,
<a href="memory_object_attr_info.html"><strong>memory_object_attr_info</strong></a>.


